<?php
   session_start();
   $_SESSION['loggedin'] = "false";
   
   class LoginHandler{
   	
	private static $logIn = "loggedin";
   	
	//En funktion IsLoggedIn() som kollar att en användare är inloggad, denna kan sedan användas för att avgöra ifall en användare får se information eller inte.
    //IsLoggedIn Returnerar true ifall vi är inloggade annars false.
	public function isLoggedIn(){
			if ($_SESSION['loggedin'] == "true") {
				return true;
				
			}
			return false; 
	}
	
	//En funktion DoLogin för att logga in som tar två parametrar namn och lösenord.
    //Returnerar true ifall inloggningen lyckas annars false
	public function DoLogin($name, $password){
			
		switch ($name) {
				
			case 'sebbe':
				if($password == "bra"){
					$_SESSION[self::$logIn] = "true";
					return true;
				}
				break;
				
			case 'fakeperson':
			if($password == "fake"){
				$_SESSION[self::$logIn] = "true";
				return true;
			}
			break;
			
			default:
				
				break;
		}
			return false; 
	}
	
	//Funktionen DoLogout för att logga ut. Inga parametrar och inget returvärde (utloggning kan inte misslyckas) 
	public function DoLogOut(){
		
		$_SESSION[self::$logIn] = "false";

	}
	
	public function Test(){
			
		$this ->DoLogOut();
		
		if($this ->isLoggedIn()){
			echo "You are already Logged in!";
			return false;
		}
		
		if($this ->DoLogin($name = "intesebbe", $password = "intebra")){
			echo "You can login with wrong username and password";
			return false;
		}
		
		if(!$this ->DoLogin($name = "sebbe", $password = "bra")){
			echo "You cant login with right username and password";
			return false;
		}
		
		if(!$this ->isLoggedIn()){
			echo "You are Still not logged in!";
			return false;
		}
		
		$this ->DoLogOut();
		
		if($this ->DoLogin($name = "sebbe", $password = "intebra")){
			echo "You can login with wrong password";
			return false;
		}
		
		return true;
	
    }
	
   }
   
   
?>